#import <Cocoa/Cocoa.h>

extern NSString *BWStitchEditController_ClosedNotification;
extern NSString *BWStitchEditController_ChangeNotification;

@class BWStitchEditCanvas;
@class BWSymbol;

@interface BWStitchEditController : NSWindowController
{
    IBOutlet BWStitchEditCanvas *stitchCanvas;
    IBOutlet NSButton *deleteButton;
    IBOutlet NSButton *curveToggleCheckbox;
    IBOutlet NSButton *controlPointCheckbox;
    IBOutlet NSTextField *nameField;
    IBOutlet NSTextField *keywordsField;
    IBOutlet NSTextField *symbolIdField;

    BWSymbol *rawPath;
}

- (id) initWithRawPath: (BWSymbol *) rawPath;
- (BWSymbol *) rawPath;

- (IBAction) addPoint: (id) sender;
- (IBAction) addCurve: (id) sender;
- (IBAction) addPath: (id) sender;
- (IBAction) deletePoint: (id) sender;
- (IBAction) toggleCurveLines: (id) sender;
- (IBAction) toggleControlPoints: (id) sender;
- (IBAction) setName: (id) sender;
- (IBAction) setKeywords: (id) sender;
- (IBAction) setSymbolId: (id) sender;


// undo support
- (void) removePoint: (int) index;
- (void) addNewPoint: (NSPoint) point  atIndex: (int) index;

@end // BWStitchEditController

